home *** CD-ROM | disk | FTP | other *** search
/ Collection of Tools & Utilities / Collection of Tools and Utilities.iso / dskut / crc113.zip / WRITE.C < prev    next >
Text File  |  1990-01-02  |  1KB  |  50 lines

  1. #include "write.h"
  2.  
  3. #define MASK  0xf
  4.  
  5. void wrchar(int ch)
  6. {
  7.   int dosfn = 0x2;              /* character output */
  8.   unsigned int dosdx, dosal = 0;
  9.  
  10.   dosdx = ch;
  11.   bdos(dosfn, dosdx, dosal);
  12.   if (ch == '\n')
  13.     bdos(dosfn, '\r', dosal);
  14. }
  15.  
  16. void wr_char_rep(char ch, int cnt)
  17. {
  18.   while (cnt-- > 0)
  19.     wrchar(ch);
  20. }
  21.  
  22. void wrstr(char *s)
  23. {
  24.   while (*s)
  25.     wrchar(*s++);
  26. }
  27.  
  28. static char hex_array[] = "0123456789ABCDEF";
  29.  
  30. void wrhex(unsigned int v)
  31. {
  32.   wrchar( hex_array[v >> 12       ] );
  33.   wrchar( hex_array[v >>  8 & MASK] );
  34.   wrchar( hex_array[v >>  4 & MASK] );
  35.   wrchar( hex_array[v       & MASK] );
  36. }
  37.  
  38. void wrlnghex(unsigned long v)
  39. {
  40.   wrchar( hex_array[v >> 28       ] );
  41.   wrchar( hex_array[v >> 24 & MASK] );
  42.   wrchar( hex_array[v >> 20 & MASK] );
  43.   wrchar( hex_array[v >> 16 & MASK] );
  44.  
  45.   wrchar( hex_array[v >> 12 & MASK] );
  46.   wrchar( hex_array[v >>  8 & MASK] );
  47.   wrchar( hex_array[v >>  4 & MASK] );
  48.   wrchar( hex_array[v       & MASK] );
  49. }
  50.